package qldc.pm.tiensu.model.impl;

import com.liferay.portal.kernel.util.StringBundler;
import com.liferay.portal.kernel.util.StringPool;
import com.liferay.portal.model.CacheModel;

import qldc.pm.tiensu.model.DoiTuongTienSu;

import java.io.Externalizable;
import java.io.IOException;
import java.io.ObjectInput;
import java.io.ObjectOutput;

import java.util.Date;

/**
 * The cache model class for representing DoiTuongTienSu in entity cache.
 *
 * @author Brian Wing Shun Chan
 * @see DoiTuongTienSu
 * @generated
 */
public class DoiTuongTienSuCacheModel implements CacheModel<DoiTuongTienSu>,
    Externalizable {
    public long doiTuongTienSuId;
    public long userId;
    public String userName;
    public long createDate;
    public long modifiedDate;
    public String soDinhDanhCaNhan;
    public Boolean xoaAnTich;

    @Override
    public String toString() {
        StringBundler sb = new StringBundler(15);

        sb.append("{doiTuongTienSuId=");
        sb.append(doiTuongTienSuId);
        sb.append(", userId=");
        sb.append(userId);
        sb.append(", userName=");
        sb.append(userName);
        sb.append(", createDate=");
        sb.append(createDate);
        sb.append(", modifiedDate=");
        sb.append(modifiedDate);
        sb.append(", soDinhDanhCaNhan=");
        sb.append(soDinhDanhCaNhan);
        sb.append(", xoaAnTich=");
        sb.append(xoaAnTich);
        sb.append("}");

        return sb.toString();
    }

    @Override
    public DoiTuongTienSu toEntityModel() {
        DoiTuongTienSuImpl doiTuongTienSuImpl = new DoiTuongTienSuImpl();

        doiTuongTienSuImpl.setDoiTuongTienSuId(doiTuongTienSuId);
        doiTuongTienSuImpl.setUserId(userId);

        if (userName == null) {
            doiTuongTienSuImpl.setUserName(StringPool.BLANK);
        } else {
            doiTuongTienSuImpl.setUserName(userName);
        }

        if (createDate == Long.MIN_VALUE) {
            doiTuongTienSuImpl.setCreateDate(null);
        } else {
            doiTuongTienSuImpl.setCreateDate(new Date(createDate));
        }

        if (modifiedDate == Long.MIN_VALUE) {
            doiTuongTienSuImpl.setModifiedDate(null);
        } else {
            doiTuongTienSuImpl.setModifiedDate(new Date(modifiedDate));
        }

        if (soDinhDanhCaNhan == null) {
            doiTuongTienSuImpl.setSoDinhDanhCaNhan(StringPool.BLANK);
        } else {
            doiTuongTienSuImpl.setSoDinhDanhCaNhan(soDinhDanhCaNhan);
        }

        doiTuongTienSuImpl.setXoaAnTich(xoaAnTich);

        doiTuongTienSuImpl.resetOriginalValues();

        return doiTuongTienSuImpl;
    }

    @Override
    public void readExternal(ObjectInput objectInput) throws IOException {
        doiTuongTienSuId = objectInput.readLong();
        userId = objectInput.readLong();
        userName = objectInput.readUTF();
        createDate = objectInput.readLong();
        modifiedDate = objectInput.readLong();
        soDinhDanhCaNhan = objectInput.readUTF();
        xoaAnTich = objectInput.readBoolean();
    }

    @Override
    public void writeExternal(ObjectOutput objectOutput)
        throws IOException {
        objectOutput.writeLong(doiTuongTienSuId);
        objectOutput.writeLong(userId);

        if (userName == null) {
            objectOutput.writeUTF(StringPool.BLANK);
        } else {
            objectOutput.writeUTF(userName);
        }

        objectOutput.writeLong(createDate);
        objectOutput.writeLong(modifiedDate);

        if (soDinhDanhCaNhan == null) {
            objectOutput.writeUTF(StringPool.BLANK);
        } else {
            objectOutput.writeUTF(soDinhDanhCaNhan);
        }

        objectOutput.writeBoolean(xoaAnTich);
    }
}
